iT邦幫忙

2024 iThome 鐵人賽

DAY 8
0
JavaScript

30天享用JavaScript概念三明治系列 第 8

Day8:JavaScript型別&typeof語法

  • 分享至 

  • xImage
  •  

JavaScript常用的七個型別:

基礎型別

  1. 字串(String):表示一連串的文字或字符,例如 "Hello, World!"。
  2. 數值(Number):表示整數或浮點數,例如 12 或 3.45。
  3. 布林(Boolean):表示真(true)或假(false)兩種值。
  4. 未定義(Undefined):表示變數已聲明但尚未賦值的狀態。
  5. 空值(Null):表示明確的「無」或「空」值,用來表示沒有對象。

複合/物件型別
6. 物件(Object):用於儲存多個值,這些值以鍵值對的形式組織,例如 { name: "Ann", age: 18 }。
7. 陣列(Array):用於儲存一系列有序的值,例如 [1, 2, 3, 4]。


typeof語法 (P2-5)

typeof語法可以用來判斷JavaScript的型別,譬如字串(String)跟數值(Number)。

typeof "Hi, I am a string";
console.log(typeof "Hi, I am a string"); // string

typeof 100;
console.log(typeof 100); // number

在 JavaScript 中,typeof 操作符可以用來判斷變數的型別,但對於某些型別,typeof 的結果可能會有些限制。以下是如何用 typeof 判斷常見型別的方式:

布林(Boolean):

let boolValue = true;
console.log(typeof boolValue); // "boolean"

未定義(Undefined):

let undefinedValue;
console.log(typeof undefinedValue); // "undefined"

空值(Null):
typeof 對於 null 的返回值是 "object",這是 JavaScript 的一個歷史性錯誤。要專門檢查 null,需要另外的判斷:

let nullValue = null;
console.log(typeof nullValue); // "object"
console.log(nullValue === null); // true

物件(Object):

let objectValue = { key: "value" };
console.log(typeof objectValue); // "object"

陣列(Array):
null
typeof 陣列會顯示為 "object",所以需要額外檢查 Array.isArray() 來確定變數是否為陣列:
null

let arrayValue = [1, 2, 3];
console.log(typeof arrayValue); // "object"
console.log(Array.isArray(arrayValue)); // true

簡單來說:
布林(Boolean) 會顯示 "boolean"。
未定義(Undefined) 會顯示 "undefined"。
空值(Null) 會顯示 "object",需要額外檢查 null。
物件(Object) 和 陣列(Array) 都會顯示 "object",但可以用 Array.isArray() 確定是否為陣列。


上一篇
Day7:鬼滅之刃「註」訓練篇=註解
下一篇
Day9:!=反向(NOT)運算子
系列文
30天享用JavaScript概念三明治30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言